# -*- coding: utf-8 -*-
# @Time     : 2021/11/26 15:50
# @Author   : wljess
# @File     : 日志处理.py
# @Describe : 
# @Software : PyCharm

import logging


def logged(func):
    def inner(*args, **kwargs):
        logging.basicConfig(level=logging.DEBUG  # 设置日志输出格式
                            , filename="demo.log"  # log日志输出的文件位置和文件名
                            , filemode="w"  # 文件的写入格式，w为重新写入文件，默认是追加
                            ,format="%(asctime)s - %(name)s - %(levelname)-9s - %(filename)-8s : %(lineno)s line - %(message)s"
                            # 日志输出的格式
                            # -8表示占位符，让输出左对齐，输出长度都为8位
                            , datefmt="%Y-%m-%d %H:%M:%S"  # 时间输出的格式
                            )
        try:
            result = func(*args, **kwargs)
        except Exception as error:
            logging.exception(error)
        else:
            return result
    return inner

@logged
def foo(a, b):

    return a + b

if __name__ == '__main__':
    print(foo(10, "abc"))
